package com.itbour.dao.tg;

import java.util.List;
import java.util.Map;

import com.itbour.dto.com.TopicInfoDto;
import com.itbour.dto.tg.DesignPCInfoDto;
import com.itbour.dto.tg.DesignPageInfoDto;
import com.itbour.dto.tg.DesignInfoDto;
import com.itbour.dto.tg.DisUserdocDto;
import com.itbour.dto.tg.KeywordInfoDto;
import com.itbour.dto.tg.OrgInfoDto;
import com.itbour.dto.tg.OutlineInfoDto;
import com.itbour.dto.trade.TmplPriceInfoDto;
import com.itbour.dto.video.YjxPriceInfoDto;


/**
 * 设计模版dao
 * 
 * copyright   itbour team 2016
 * @author     xc
 */

public interface DesignDao {
	// 检索设计模版信息
	public int selectDesignCnt(Map<String,Object> param);
	public List<DesignInfoDto> selectDesignInfo(Map<String,Object> param);// doc
	public List<DesignPageInfoDto> selectDesignPageInfo(Map<String,Object> param);// page
	public List<DesignPCInfoDto> selectDesignPCInfo(Map<String,Object> param);// page content
	
	// 更新设计模版信息
	public void updateDesignInfoById(Map<String,Object> param);// doc
	public void updateDesignPageInfoById(Map<String,Object> param);// page
	public void updateDesignPCInfoById(Map<String,Object> param);// page content
	
	// 逻辑删除设计模版信息
	public void deleteDesignLogic(Map<String,Object> param);// doc
	public void deleteDesignPageLogic(Map<String,Object> param);// page
	public void deleteDesignPCLogic(Map<String,Object> param);// page content
	
	// 检索提纲信息
	public List<OutlineInfoDto> selectOutlineInfo(Map<String,Object> param);
	
	// 检索组织信息
	public List<OrgInfoDto> selectOrgInfo(Map<String,Object> param);
	
	// 检索关键词信息
	public List<KeywordInfoDto> selectKeywordInfo(Map<String,Object> param);
	public List<KeywordInfoDto> selectDesignKeywordInfo(Map<String,Object> param);
	
	// 添加评审纪录
	public void insertReviewHis(Map<String,Object> param);
	
	// 检索热门专题信息
	public List<TopicInfoDto> selectTopicInfo(Map<String,Object> param);
	public List<TopicInfoDto> selectTopicInfo2(Map<String,Object> param);
	public List<TopicInfoDto> selectTopicInfo3(Map<String,Object> param);
	
	// 检索模版价格
	public int selectTmplPriceCnt(Map<String,Object> param);
	public List<TmplPriceInfoDto> selectTmplPriceInfo(Map<String,Object> param);
	
	// 模版价格增删改
	public void deleteTmplPriceLogic(Map<String,Object> param);
	public void updateTmplPriceById(Map<String,Object> param);
	public void insertTmplPrice(Map<String,Object> param);
	
	//Gets the number of user documents for the design template
	public int getDisignUserDocCnt(Map<String, Object> parm);
	public List<DisUserdocDto> getDisignUserDocInfo(Map<String, Object> parm);
	
	// 检索套餐价格
	public List<YjxPriceInfoDto> selectPriceInfo(Map<String, Object> parm);
	public List<YjxPriceInfoDto> selectTgPriceInfo(Map<String, Object> parm);
	public void addPriceRInfo(Map<String, Object> parm);// 添加一键秀 模板套餐价格
	public void delPriceRInfo(Map<String, Object> parm);// 删除一键秀套餐价格
	
	// 同步删除模板组的 设计模板
	public void delTmplSetRInfo(Map<String, Object> parm);
	
	/**
	 * 下架模板
	 */
	public int selectOutDesignCnt(Map<String,Object> param);
	public List<DesignInfoDto> selectOutDesignInfo(Map<String,Object> param);// doc
	public void insertReview2His(Map<String,Object> param);//添加下架复审通过记录
}
